// 入口函数
$(function () {
  // 外网
  var URl = 'https://test.twzcloud.com/meeting/acc-api';
  // 内网
  // var URl = 'https://expert.most.gov.cn/meeting/acc-api';

  var TOKEN = sessionStorage.getItem('TOKEN')
  var tableList = []

  loginEmpty();

  // var dats = [{
  //   id: 1
  //   ,cityflockname: "北京"
  //   ,date: "2021年7月16日11:21:20"
  //   ,reviewstatus: 0
  //   ,submitstatus: 0
  // },{
  //   id: 2
  //   ,cityflockname: "上海"
  //   ,date: "2021年7月16日11:21:20"
  //   ,reviewstatus: 1
  //   ,submitstatus: 1
  // }]

  // 城市列表渲染
  /**
   * @param {arr} tableList 表格数组
   */
  function setTableList (tableList) {
    for (var i = 0; i < tableList.length; i++) {
      tableList[i].sortId = i + 1
    }
    layui.use('table', function () {
      var table = layui.table;
      
      //展示已知数据
      table.render({
        elem: '#demo'
        ,cols: [[ //标题栏  2021年7月20日
          {field: 'sortId', title: '序号', width: 80, align: 'center'}
          ,{field: 'cityName', title: '城市群名称', width: 300, align: 'center'}
          ,{field: 'reviewTime', title: '评审时间', minWidth: 300, align: 'center', templet: function (row) { return '<span>2021年7月20日</span>' }}
          ,{field: 'materials', title: '申报材料', minWidth: 120, align: 'center', templet: function (row) { return '<span class="materialsCheck" data-id="'+ row.specialistCityReviewId +'">查 看</span>' }}
          ,{field: 'review', title: '在线评审', width: 120, align: 'center', templet: function (row) { return '<span class="review" data-id="'+ row.specialistCityReviewId +'">评 审</span>' }}
          ,{field: 'reviewStatus', title: '评审状态', width: 120, align: 'center', templet: function (row) { if (row.reviewStatus == 1) { return '<span>已评审</span>' } else { return '<span>未评审</span>' } } }
          ,{field: 'submitStatus', title: '提交状态', width: 120, align: 'center', templet: function (row) { if (row.submitStatus == 1) { return '<span>已提交</span>' } else { return '<span>未提交</span>' } } }
        ]]
        ,data: tableList
        //,skin: 'line' //表格风格
        ,even: true
        //,page: true //是否显示分页
        //,limits: [5, 7, 10]
        //,limit: 5 //每页默认显示的数量
      });
    });
  }
  // 退出
  $('#quit').on('click', function () {
    layui.use('layer', function(){
      var layer = layui.layer;
      layer.open({
        title: '提示',
        content: '您确定要退出吗?',
        yes: function(index, layero){
          //do something
          layer.close(index); //如果设定了yes回调，需进行手工关闭
          $.ajax({
            type : 'get',
            url : URl + '/logout',
            beforeSend: function(xhr) {
              xhr.setRequestHeader("token", TOKEN);
            },
            success : function (res) {
              if (res.code == 0) {
                sessionStorage.removeItem('TOKEN');
                sessionStorage.removeItem('userData');
                window.location.href='index.html';
              } else if (res.code == 1) {
                layui.use('layer', function(){
                  var layer = layui.layer;
                  layer.open({
                    title: '提示',
                    content: '您的身份验证已过期, 请重新登录',
                    yes: function(index, layero){
                      //do something
                      sessionStorage.removeItem('TOKEN');
                      sessionStorage.removeItem('userData');
                      window.location.href='index.html';
                      layer.close(index); //如果设定了yes回调，需进行手工关闭
                    }
                  });
                });
              }
            }
          });
        }
      });
    });
  })

  // 提交
  $('#submit').on('click', function () {
    var flag = true;
    var str = ''

    for (var i = 0; i < tableList.length; i++) {
      if (tableList[i].reviewStatus == '0' || !tableList[i].reviewStatus) {
        str = tableList[i].cityName
        flag = false
      }
    }
    
    if (!flag) {
      layui.use('layer', function(){
        var layer = layui.layer;
        layer.open({
          title: '提示',
          content: str + ' 城市群未评审，请评审后进行提交。',
        });
      });
      return
    }
    
    if (tableList[0].submitStatus == 1) {
      layui.use('layer', function(){
        var layer = layui.layer;
        layer.open({
          title: '提示',
          content: '当前项目已提交，无需重复提交。',
        });
      });
      return
    }

    if (tableList[0].submitStatus == 0 || !tableList[0].submitStatus) {

      layer.confirm('提交后将不允许修改，确认提交么?', {
        btn: ['确定','取消'] //按钮
      }, function(){
        $.ajax({
          type : 'get',
          url : URl + '/city/submit',
          beforeSend: function(xhr) {
            xhr.setRequestHeader("token", TOKEN);
          },
          success : function (res) {
            if (res.code == 0) {
              layui.use('layer', function(){
                var layer = layui.layer;
                layer.open({
                  title: '提示',
                  content: '提交成功',
                  yes: function(index, layero){
                    //do something
                    getCityList();
                    layer.close(index);
                  }
                });
              });
            } else if (res.code == 1) {
              layui.use('layer', function(){
                var layer = layui.layer;
                layer.open({
                  title: '提示',
                  content: res.msg,
                  yes: function(index, layero){
                    //do something
                    layer.close(index);
                  }
                });
              });
            }
          }
        });
      }, function(){
      });
    }

  })

  // 下载按钮
  $('#download').on('click', function () {

    if (tableList[0].submitStatus == 0 || !tableList[0].submitStatus) {
      layui.use('layer', function(){
        var layer = layui.layer;
        layer.open({
          title: '提示',
          content: '当前项目未提交，请提交后进行下载。',
        });
      });
      return
    }
	  location.href = 'specialist-pdf.html';
  })

  // 回退
  $('#rollback').on('click', function () {

    if (tableList[0].submitStatus == 0) {
      layui.use('layer', function(){
        var layer = layui.layer;
        layer.open({
          title: '提示',
          content: '当前项目未提交，无需重复回退 。',
        });
      });
      return
    }

    $.ajax({
      type : 'get',
      url : URl + '/city/reback',
      beforeSend: function(xhr) {
        xhr.setRequestHeader("token", TOKEN);
      },
      success : function (res) {
        if (res.code == 0) {
          layui.use('layer', function(){
            var layer = layui.layer;
            layer.open({
              title: '提示',
              content: '回退成功',
              yes: function(index, layero){
                //do something
                getCityList();
                layer.close(index);
              }
            });
          });
        }
      }
    });
  })

  // 申报材料
  $(document).on('click', '.materialsCheck', function (event) {
    $('layui-layer-dialog').css('width', '700px');
    var id = $(event.target).attr('data-id');
    var arrEppendix = [];
    for (var i = 0; i < tableList.length; i++) {
      if (tableList[i].specialistCityReviewId == id) {
        // console.log('rensk', tableList[i]);
        var cityid = tableList[i].cityId
        for (var key in tableList[i]) {
          var obj = {}
          if (new RegExp(/^append/).test(key) && tableList[i][key] != '') {
            obj.id = cityid
            obj.itemId = key.slice(8,9)
            obj.file = tableList[i][key]
            arrEppendix.push(obj)
          }
        }
      }
    }
    // var data = ['1afsdf/asdf/fasd', '2asdf/fasd/asd', '3123sa/asd12']
    var tr = ''
    for (var i = 0; i < arrEppendix.length; i++) {
      var item = arrEppendix[i]
      var file = item.file.slice(item.file.lastIndexOf('/') + 1, item.file.length)
      
      // str += '<a href="look-pdf.html?id='+item.id+'=itemId='+item.itemId+'=file='+item.file+'" class="checkpdf" target="_blank" data-src="'+ item.file +'">' + file + '</a>'

      tr += '<tr><td class="tab-cen">'+ (i+1) +'</td><td>'+ file +'</td><td class="tab-cen"><a href="look-pdf.html?id='+item.id+'=itemId='+item.itemId+'=file='+item.file+'" class="checkpdf" target="_blank" data-src="'+ item.file +'">查 看</a></td></tr>'

    }

  //   var str = `
  //   <div style="font-size: 14px;">温馨提示：部分文件较大，加载较慢，请耐心等待。如出现打开错误，请使用谷歌浏览器或者360浏览器极速模式重新尝试。</div>
  //   <table class="layui-table">
  //   <colgroup>
  //     <col width="60">
  //     <col>
  //     <col width="100">
  //   </colgroup>
  //   <thead>
  //     <tr>
  //       <th>序号</th>
  //       <th style="text-align: center;">文件名</th>
  //       <th style="text-align: center;">查看</th>
  //     </tr> 
  //   </thead>
  //   <tbody>
  //   ${tr}
  //   </tbody>
  // </table>`


    var str = ''
    str += '<div style="font-size: 14px;">温馨提示：部分文件较大，加载较慢，请耐心等待。如出现打开错误，请使用谷歌浏览器或者360浏览器极速模式重新尝试。</div>'
    str += '<table class="layui-table">'
    str += '<colgroup>'
    str += '<col width="60">'
    str += '<col>'
    str += '<col width="100">'
    str += '</colgroup>'
    str += '<thead>'
    str += '<tr>'
    str += '<th>序号</th>'
    str += '<th style="text-align: center;">文件名</th>'
    str += '<th style="text-align: center;">查看</th>'
    str += '</tr> '
    str += '</thead>'
    str += '<tbody>'
    str += tr
    str += '</tbody>'
    str += '</table>'


    // var str = '<table class="layui-table"><colgroup><col width="60"><col><col width="100"></colgroup><thead><tr><th>序号</th><th style="text-align: center;">文件名</th><th style="text-align: center;">查看</th></tr> </thead><tbody>'+ str +'</tbody></table>'

    layui.use('layer', function(){
      var layer = layui.layer;
      layer.open({
        title: '申报材料',
        area: ['900px'],
        content: str
 
      });
    });
  });

  // 在线评审
  $(document).on('click', '.review', function (event) {
    var id = $(event.target).attr('data-id')
    window.location.href='review.html?id=' + id;
  });

  // 查看pdf
  $(document).on('click', '.checkpdf', function (event) {
    beforeMount();
    // layer.close(layer.open())
  })
  
  // 评审列表页渲染
  /**
   * @param {String} expertName 专家名 
   * @param {String} unit 单位
   */
  function reviewListnit (expertName, unit) {
    $('#expertName').text(expertName);
    $('#unit').text(unit);
  }

  // 请求列表
  function getCityList () {
    // var TOKEN = sessionStorage.getItem('TOKEN')
    // console.log('TONKEN', TOKEN);
    $.ajax({
      type: 'GET',
      url: URl + '/city/list',
      beforeSend: function(xhr) {
        // xhr.setRequestHeader("Access-Control-Allow-Origin", "*");
        xhr.setRequestHeader("token", TOKEN);
      },
      success: function (res) {
        if (res.code == 0) {
          tableList = res.data
          setTableList(res.data);
        } else if (res.code == 1) {
          layui.use('layer', function(){
            var layer = layui.layer;
            layer.open({
              title: '提示',
              content: '您的身份验证已过期, 请重新登录',
              yes: function(index, layero){
                //do something
                sessionStorage.removeItem('TOKEN');
                sessionStorage.removeItem('userData');
                window.location.href='index.html';
                layer.close(index); //如果设定了yes回调，需进行手工关闭
              }
            });
          });
        }
      }
    })
  }

  function loginEmpty () {
    // var token = sessionStorage.getItem('TOKEN')
    var path = window.location.pathname
    if (path != '/login.html') {
      if (TOKEN == '' || !TOKEN) {
        window.location.href='index.html';
      } else {
        var userData = JSON.parse(sessionStorage.getItem('userData'));
        reviewListnit(userData.specilistName, userData.workCompany);
        getCityList();
      }
    }
  }

  // 浏览器检测
  function beforeMount () {
    // IE9 及以下 跳转下载浏览器页面
      var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
      var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
      var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
      var isEdge = userAgent.indexOf("Edg") > -1 && !isIE; //Edge浏览器
      var isFirefox = userAgent.indexOf("Firefox") > -1; //Firefox浏览器
      var isOpera = userAgent.indexOf("Opera") > -1 || userAgent.indexOf("OPR") > -1; //Opera浏览器
      var isChrome = userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Edge") == -1 && userAgent.indexOf("OPR") == -1; //Chrome浏览器
      var isSafari = userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") == -1 && userAgent.indexOf("Edge") == -1 && userAgent.indexOf("OPR") == -1; //Safari浏览器

      if (isIE) {
          var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
          reIE.test(userAgent);
          var fIEVersion = parseFloat(RegExp["$1"]);
          
          if (fIEVersion < 10) {
            // alert('本系统暂不支持IE'+fIEVersion+'浏览器”，请使用“IE10、火狐、360”浏览器访问系统进行评审。');
            alert('当前浏览器不支持，请您使用IE10以上版本，谷歌，火狐，360极速等浏览器访问本系统。如果您使用的是双核浏览器,请切换到极速模式访问。');

            // this.$message.error('当前浏览器版本太低，请下载一下浏览器')
            // setTimeout(() =>{
            //   this.$router.push({
            //       path: '/versionPage/versionPage'
            //   })
            // },200)
          }
      }
      if (isFirefox) {
          var reFirefox = new RegExp("Firefox/(\\d+\\.\\d+)?");
          reFirefox.test(userAgent);
          var fFirefoxVersion = parseFloat(RegExp["$1"]);
          if (fFirefoxVersion < 85) {
            // setTimeout(() =>{
              // this.$router.push({
              //     path: '/versionPage/versionPage'
              // })
            // },200)
          }
      }
      if (isChrome) {
          var reChorme = new RegExp("Chrome/(\\d+\\.\\d+(?:\\.\\d+\\.\\d+))?");
          reChorme.test(userAgent);
          var fIEVersion = parseFloat(RegExp["$1"]);
          if (fIEVersion < 63) {
            // setTimeout(() =>{
              // this.$router.push({
              //     path: '/versionPage/versionPage'
              // })
            // },200)
              
          }
      }
      if (isEdge) {
          var reChorme = new RegExp("Chrome/(\\d+\\.\\d+(?:\\.\\d+\\.\\d+))?");
          reChorme.test(userAgent);
          var fIEVersion = parseFloat(RegExp["$1"]);
          if (fIEVersion < 63) {
            // setTimeout(() =>{
              // this.$router.push({
              //     path: '/versionPage/versionPage'
              // })
            // },200)
              
          }
      }
  }

})